home *** CD-ROM | disk | FTP | other *** search
/ Technotools / Technotools (Chestnut CD-ROM)(1993).ISO / lang_asm / disasm / lbas.doc < prev    next >
Text File  |  1988-06-03  |  4KB  |  94 lines

  1.           LBAS  Label Basic Translator Program
  2.           ====================================
  3.  
  4.   Author:       Jack Botner
  5.   Date Written: November, 1982
  6.   Last Updated: April, 1983
  7.  
  8.   This program was written at home on my own time and I am making it available
  9. for IBM Internal Use.
  10.  
  11. Changes incorporated in version 12/82:
  12.   - TAB character is now replaced with a blank so tabs may be
  13.     present in the input.
  14.   - "Between double quotes" flag turned off when a new line
  15.     is begun, to limit scope of impact if closing " is missing.
  16.   - Test inserted to make sure user has enough memory available.
  17.   - Warning issued when output file will be overwritten.
  18.   - Dependance on copy code control block storage definitions removed.
  19.  
  20. Changes incorporated in version 04/83:
  21.   - Fixed bug which caused program to fail "insufficient memory"
  22.     when system has 512K or more storage.
  23.   - Changed diskette I/O to block read and write, for up to 5 times
  24.     improved run times.
  25.   - Now allows "comment" lines where the first line is the "sun"
  26.     symbol (also known as squashed bug symbol) (character 15 decimal).
  27.   - Now ignores blank lines.
  28.  
  29. PCLIB contents:
  30.   LBAS EXEEXP is an EXPORTED version of LBAS.EXE.
  31.   LBAS EXETBH is a B3277 binary version of LBAS.EXE.
  32.   LBAS ASM    is the PC-assembler source code (no tabs).
  33.   LBAS DOC    is this document, in plain text.
  34.  
  35. Description:
  36.   This program translates "label basic" programs into proper
  37.   basic format acceptible to the PC Basic interpreter. It is
  38.   written in assembly language for speedy execution.
  39.  
  40.   "Label basic" programs can be thought of as Basic programs
  41.   with two differences:
  42.   1. There are no sequence numbers at the beginning of each
  43.      statement.
  44.   2. Statement locations required by GOTO, GOSUB, ON ERROR, etc.
  45.      are referenced by labels instead of statement numbers.
  46.  
  47.   "Label basic" programs have the following advantages:
  48.   1. The program can be entered and maintained using a PC
  49.      full-screen editor.
  50.   2. The programmer need not concern himself with statement numbers
  51.      and renumbering the program. Statements and subroutines are
  52.      referenced symbolically.
  53.  
  54.   The disadvantage of "label basic", of course, is that you have to maintain the
  55. "label basic" source and run the program through the translator before it is
  56. useable by Basic. However, this translator runs quite fast, more than 10 times
  57. faster than the version which runs under the Basic interpreter. (Credit must be
  58. given to Dave Chess, who inspired the idea of label basic.)
  59.  
  60.   A label is defined as any non-blank string of characters beginning with an '!'
  61. symbol and containing at least one additional character. The maximum label
  62. length supported by this program is 16 characters (including the !). The program
  63. has room for 256 labelled state- ments. These limitations are somewhat arbitrary
  64. and could be changed if necessary. Labels found inside literals (i.e. between
  65. double quotes) will be ignored. Each statement can be "labelled" only once.
  66.  
  67.   The maximum file size which can be processed by this program is 64K bytes.
  68. This is because the entire file is read into one data segment of main storage
  69. for processing, thus avoiding having to read the file from disk twice.
  70. Therefore, your PC must have at least 96K of memory to run LBAS. If insufficient
  71. memory is available, the program will terminate with an error message.
  72.  
  73.   Files used as input to this program should have a file extension of "LBA".
  74. (This can be overridden, but the program will be easier to run with the default
  75. file extension.) The output file will be created with the same filename, and
  76. given a file extension of "BAS". This will be in a format compatible with Basic
  77. ASCII files. The output file will always be created on the same disk as the
  78. input file.
  79.  
  80.   To run the program, enter (from DOS):
  81.  
  82.              LBAS <d:>filename<.filext>
  83.  
  84.   where d: overrides the default disk drive if necessary, and .filext overrides
  85. the default file extension (.LBA). If you omit the filename on the command, you
  86. will be prompted for it.
  87.  
  88.   Each TAB character is replaced with a blank, so tabs may be present in the
  89. input file. No attempt is made to maintain original spacing of the lines,
  90. however.
  91.  
  92.   To report any problems or suggestions, please contact the author at VM
  93. TOROLAB(BOTNER).
  94.